//GEOMETRY SHADER
#version 120

#extension GL_EXT_gpu_shader4: enable
#extension GL_EXT_geometry_shader4 : enable

//uniform int timer;

varying in vec4 vColor[3];
varying out vec4 gColor;

 ///////////////////////
 void main()
 {
     gl_Position =  gl_PositionIn[0];
     gColor = vColor[0];
     EmitVertex();
     
     gl_Position =  gl_PositionIn[1];
     gColor = vColor[1];
     EmitVertex();
     
     gl_Position =  gl_PositionIn[2];
     gColor = vColor[2];
     EmitVertex();
     
     EndPrimitive();

     //not sure why this doesn't work
//     
//     vec4 mdPt = ( gl_PositionIn[1] + gl_PositionIn[2] ) / 2.0;
//     vec4 newPt = (vec4)(mdPt.x, mdPt.y, mdPt.z+20.0, 1.0);
//     
//     gl_Position =  gl_PositionIn[0];
//     gColor = vColor[0];
//     EmitVertex();
//     
//     gl_Position =  gl_PositionIn[1];
//     gColor = vColor[1];
//     EmitVertex();
//     
//     gl_Position =  newPt;
//     gColor = vColor[2];
//     EmitVertex()
//     
//     EndPrimitive();
//     
//     
//     gl_Position =  gl_PositionIn[0];
//     gColor = vColor[0];
//     EmitVertex();
//     
//     gl_Position =  gl_PositionIn[2];
//     gColor = vColor[2];
//     EmitVertex();
//     
//     gl_Position =  newPt;
//     gColor = vColor[1];
//     EmitVertex()
//     
//     EndPrimitive();

 }
 
 
 
